package org.example.mapper;

import com.github.pagehelper.PageInfo;
import org.apache.ibatis.annotations.Param;
import org.example.bean.StudentBean;

import java.util.List;

public interface IStudentMapper {
    /**
     * 动态条件分页查询学生
     * @param stuName 姓名
     * @param stuClassName 所在班级名称
     * @param stuRoom 所在房间
     * @return 学生分页对象
     */
    public List<StudentBean> cutFind(
            @Param("stuName") String stuName,
            @Param("stuClassName") String stuClassName,
            @Param("stuRoom") String stuRoom);

    /**
     * 学生入住
     * @param studentBean 学生对象
     */
    public void add(@Param("studentBean") StudentBean studentBean,@Param("classID") Integer classID,@Param("roomID") Integer roomID);

    /**
     * 学生换房，根据学生id，修改房间外键
     * @param stuID 学生id
     * @param newRoomID 新房间id
     */
    public void changeRoom(@Param("stuID") String stuID,@Param("newRoomID") String newRoomID);

    /**
     * 学生退房，根据id删除学生对象
     * @param stuID 学生id
     */
    public void delStudent(Integer stuID);

    /**
     * 根据id查询学生
     * @param stuID 学生id
     * @return 学生对象
     */
    public StudentBean findByID(Integer stuID);
}
